Learning Users’ Habits to Automate Repetitive Tasks
نویسندگان
چکیده
Adaptive Programming Environment (APE), a software assistant embedded into the VisualWorks Smalltalk interactive programming environment, watches what the user is doing, draws on machine learning to learn the user’s habits, and afterward offers to complete repetitive tasks on his or her behalf. The goal of the APE project was threefold: (1) to design an assistant able to automate repetitive tasks with a minimal amount of user’s intervention, (2) to design an assistant able, as in programming-by-example (also called programming-by-demonstration) systems, to replay and automate complex repetitive tasks, and (3) to design an assistant that disrupts the user’s work as little as possible—that is, that makes the right suggestion at the right moment. As a consequence, APE employs a machine-learning algorithm we have specifically designed to learn efficiently and rapidly not only what to suggest to the user but also when to make a suggestion.
منابع مشابه
Automating Repetitive Tasks in User Interaction
Computer users constantly face situations where repetitive tasks emerge and there is no easy way to automate them. Although there are several application launchers currently available, they lack of automating power to face the uniqueness of the repetitive tasks that arise from everyday usage. Many times, users have to resort to scripting languages and macro recorders to perform these tasks. How...
متن کاملGraphical Editing by Example
Graphical editing, like many applications facilitated by computers, often involves repetitive tasks. To reduce repetition, programmers can write procedures to automate these tasks, however most users do not know how to program, and the repetitive tasks that they perform are frequently too specialized for the application programmer to anticipate. End users would benefit from the ability to custo...
متن کاملLearning Users Habits: the Ape Project
This paper proposes new results in the eld of software assistants helping users of interactive tools in the task of automatically performing repetitive tasks. We propose an innovative integration of such an assistant into an interactive programming environment. In this context, learning to recognize situations in which repetitive tasks occur is diicult because languages describing users actions...
متن کاملFamiliar: Automating Repetition in Common Applications
Computers reputedly excel at repetitive problems, yet many users find themselves performing the same actions over and over again. Non-programmers have little choice but to perform iterative tasks by hand. Programming by demonstration is an end-user programming technique that lets the user teach the computer a program by showing it examples of what they want done, much as they might teach anothe...
متن کاملThe 1996 AAAI Spring Symposia Reports
This symposium brought together three different communities that are all looking at the problem of automating tasks through interactions with users: First, knowledge acquisition concentrates on how to structure a system’s interactions with users based on the nature of the task to be automated. Second, machine learning seeks automated algorithms that do explanation or induction based on a user’s...
متن کامل